package com.ebraga.trackerclub.android.manager.api;


import com.ebraga.trackerclub.android.dao.entity.PositionAndroid;
import com.ebraga.trackerclub.android.dao.entity.UserAndroid;
import com.ebraga.trackerclub.android.exception.BackofficeDBConnectionException;
import com.ebraga.trackerclub.android.exception.manager.BackofficeIllegalArgumentManagerException;
import com.ebraga.trackerclub.android.exception.manager.BackofficeInvalidSessionManagerException;
import com.ebraga.trackerclub.android.exception.manager.BackofficeManagerException;

public interface PositionManager {
	
	/**
	 * Method responsible for storing GPS data from the device.
	 * 
	 * @param user
	 * @param position
	 */
	void sendPositionData(UserAndroid user, PositionAndroid position) throws BackofficeIllegalArgumentManagerException , 
		BackofficeDBConnectionException , BackofficeInvalidSessionManagerException , BackofficeManagerException;	
	
	/**
	 * Method responsible for storing GPS data from the device.
	 * 
	 * @param user
	 * @return position
	 */
	PositionAndroid getLastPosition(UserAndroid user) throws BackofficeIllegalArgumentManagerException , 
	BackofficeDBConnectionException , BackofficeInvalidSessionManagerException , BackofficeManagerException;	
}
